package com.star.links.Service;

import android.graphics.Point;

import com.star.links.views.Block;

public interface PlayService {

    /**
     * 开始
     */
    void onStart();

    /**
     * 获取当前游戏状态的所有方块
     * @return
     */
    Block[][] getBlocks();

    /**
     * 判断是否还有剩余方块
     * @return
     */
    boolean hasBlocks();

    /**
     * 根据x，y找到对应方块
     * @param x
     * @param y
     * @return
     */
     Block findBlock(float x,float y);

    /**
     * 判断是否相连
     * @param b1
     * @param b2
     * @return
     */
     boolean isLink(Block b1,Block b2);

    /**
     * 搜索与回溯算法
     * @param b1
     * @param b2
     */
     void dfs(Point b1, Point b2);

    /**
     * 方块重排
     */
    void reset();
}
